An Applicative Random-Access Stack
نویسنده
چکیده
Applicative (functional) programming has long been advocated on theoretical grounds as the formal properties of such programs are simple and elegant. Recently, there has been a trend to bring the applicative approach into the practical arena as a software development tool [2] and even as a programming vehicle [1,6]. Unfortunately, the requirement that operations be side-effect free makes efficient implementations difficult to achieve [6]. However, some researchers have begun to develop effective applicative implementations for classic data abstractions such as stacks, queues, tablets, lists, etc. [4,7]. In this article, applicative algorithms for a random-access stuck @A-stack) are presented. An RA-stack is a stack data abstraction in which one is further permitted to access the kth element of a stack. The approach uses a singly-linked list representation which is augmented with auxiliary pointers that permit the access of arbitrary stack elements in O(lg N) time were N is the size of the stack. The auxiliary linking structure is based on a number representation scheme for which subtraction by one involves at most one carry operation. Another scheme with this property appears in [3].
منابع مشابه
Custom Calling Conventions in a Portable Assembly Language
Calling conventions are so difficult to implement and maintain that people rarely experiment with alternatives. The primary sources of difficulty appear to be parameter passing and stack-frame layout. To implement parameter passing, we use the automata developed by Bailey and Davidson, but we have developed a new specification language that is implementable directly in the compiler. To implemen...
متن کاملAn Improved Approach for RSSI-Based only Calibration-Free Real-Time Indoor Localization on IEEE 802.11 and 802.15.4 Wireless Networks
Assuming a reliable and responsive spatial contextualization service is a must-have in IEEE 802.11 and 802.15.4 wireless networks, a suitable approach consists of the implementation of localization capabilities, as an additional application layer to the communication protocol stack. Considering the applicative scenario where satellite-based positioning applications are denied, such as indoor en...
متن کاملCASE — A Lazy Version of an SECD Machine with a Flat Environment
Graph reduction has been the basis of most fast running implementations of functional languages, with little attention being paid recently to Landin's SECD approach. CASE is an abstract machine which supports applicative programming and is a variation of Landin's classical SECD machine. Its environment is organized in a novel way which makes variable access more efficient by removing the overhe...
متن کاملMarmote SDR: Experimental Platform for Low-Power Wireless Protocol Stack Research
Over the past decade, wireless sensor network research primarily relied on highly-integrated commercial off-the-shelf radio chips. The rigid silicon implementation of the radio stack restricted access to the lower layers; thus, research focused mainly on the medium access control (MAC) layer and above. SRAM field-programmable gate array (FPGA)-based software-defined radios (SDR), on the other h...
متن کاملSleepy Stack: a New Approach to Low Power VLSI Logic and Memory
Outline zIntroduction zRelated Work zSleepy stack zSleepy stack logic circuits zSleepy stack SRAM zLow-power pipelined cache (LPPC) zSleepy stack pipelined SRAM zConclusion
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید
ثبت ناماگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید
ورودعنوان ژورنال:
- Inf. Process. Lett.
دوره 17 شماره
صفحات -
تاریخ انتشار 1983